package etp.server;

import com.google.appengine.api.datastore.KeyFactory;

import etp.client.Codigos;
import etp.client.Projeto;
import etp.client.Recurso;
import etp.client.Tarefa;

/**
 * 
 * @author Jonas B. Bernardi
 * 
 * Classe criada para simular uma KeyFactory em cliente
 *
 */
public class KFactory {
	/**
	 * Retorna uma string codificada para chave(usada para criar chaves primarias)
	 * @return String key
	 */
	public static String keyP() {
		String k = KeyFactory.createKeyString(Projeto.class.getSimpleName(),
				CodFactory.get().getCodP());
		return k;
	}

	public static String keyT() {
		String k = KeyFactory.createKeyString(TarefaPersistente.class.getSimpleName(),
				CodFactory.get().getCodT());
		return k;
	}

	public static String keyR() {
		String k = KeyFactory.createKeyString(Recurso.class.getSimpleName(),
				CodFactory.get().getCodR());
		return k;
	}

	public static String keyC() {
		String k = KeyFactory.createKeyString(Codigos.class.getSimpleName(),
				"codigo");
		return k;
	}
	
	/**
	 * Retorna a string usada para criar a "key codificada" passada por parametro
	 * @return String keyToString
	 */
	public static String keyToString(String key){
		String k;
		
		k = KeyFactory.stringToKey(key).getName();
		
		return k;
	}
	
}